<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Chapter 1. Introduction to Porting Berkeley DB</title>
    <link rel="stylesheet" href="gettingStarted.css" type="text/css" />
    <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
    <link rel="start" href="index.html" title="Porting Berkeley DB" />
    <link rel="up" href="index.html" title="Porting Berkeley DB" />
    <link rel="prev" href="preface.html" title="Preface" />
    <link rel="next" href="portprocess.html" title="Berkeley DB Porting Process" />
  </head>
  <body>
    <div class="navheader">
      <table width="100%" summary="Navigation header">
        <tr>
          <th colspan="3" align="center">Chapter 1. Introduction to Porting Berkeley DB </th>
        </tr>
        <tr>
          <td width="20%" align="left"><a accesskey="p" href="preface.html">Prev</a> </td>
          <th width="60%" align="center"> </th>
          <td width="20%" align="right"> <a accesskey="n" href="portprocess.html">Next</a></td>
        </tr>
      </table>
      <hr />
    </div>
    <div class="chapter" lang="en" xml:lang="en">
      <div class="titlepage">
        <div>
          <div>
            <h2 class="title"><a id="introduction"></a>Chapter 1. Introduction to Porting Berkeley DB </h2>
          </div>
        </div>
      </div>
      <div class="toc">
        <p>
          <b>Table of Contents</b>
        </p>
        <dl>
          <dt>
            <span class="sect1">
              <a href="introduction.html#porttypes">Types of Berkeley DB ports</a>
            </span>
          </dt>
          <dd>
            <dl>
              <dt>
                <span class="sect2">
                  <a href="introduction.html#id1459053">When Oracle Has Agreed to Support Berkeley DB on the New Platform</a>
                </span>
              </dt>
              <dt>
                <span class="sect2">
                  <a href="introduction.html#id1459092">When Oracle has Not Agreed to Support Berkeley DB on the New Platform</a>
                </span>
              </dt>
            </dl>
          </dd>
          <dt>
            <span class="sect1">
              <a href="portprocess.html">Berkeley DB Porting Process</a>
            </span>
          </dt>
        </dl>
      </div>
      <p>
        Berkeley DB is an open source database product that supports a
        variety of platforms. When there is a need to run Berkeley DB on a
        platform that is currently not supported, DB is distributed in
        source code form that you can use as base source to port Berkeley
        DB to that platform. 
</p>
      <p>
        Before you begin actually porting Berkeley DB, you need an
        understanding of the:
</p>
      <div class="itemizedlist">
        <ul type="disc">
          <li>
            <p>
                        <a class="xref" href="introduction.html#porttypes" title="Types of Berkeley DB ports">Types of Berkeley DB ports</a>
                </p>
          </li>
          <li>
            <p>
                        <a class="xref" href="portprocess.html" title="Berkeley DB Porting Process">Berkeley DB Porting Process</a>
                </p>
          </li>
        </ul>
      </div>
      <div class="sect1" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h2 class="title" style="clear: both"><a id="porttypes"></a>Types of Berkeley DB ports</h2>
            </div>
          </div>
        </div>
        <div class="toc">
          <dl>
            <dt>
              <span class="sect2">
                <a href="introduction.html#id1459053">When Oracle Has Agreed to Support Berkeley DB on the New Platform</a>
              </span>
            </dt>
            <dt>
              <span class="sect2">
                <a href="introduction.html#id1459092">When Oracle has Not Agreed to Support Berkeley DB on the New Platform</a>
              </span>
            </dt>
          </dl>
        </div>
        <p>
                There are several types of Berkeley DB ports:
        </p>
        <div class="itemizedlist">
          <ul type="disc">
            <li>
              <p>
                                Ports developed and supported by Oracle
                        </p>
            </li>
            <li>
              <p>
                                Ports developed by a customer or a partner, but which Oracle has 
                                agreed to support.
                        </p>
            </li>
            <li>
              <p>
                                Ports developed, maintained, and supported by a customer or partner.
                        </p>
            </li>
          </ul>
        </div>
        <p>
                For a port developed by a customer or a partner, the general steps for porting
                Berkeley DB to a new platform are the same whether or not Oracle has agreed to
                support Berkeley DB on the new platform.  For example, after you complete the port
                you send it to Berkeley DB as described in <a class="xref" href="sourceintegrate.html" title="Integrating Changes into the Berkeley DB Source Code">Integrating Changes into the Berkeley DB Source Code</a>. 
                However, there are some differences.
        </p>
        <div class="sect2" lang="en" xml:lang="en">
          <div class="titlepage">
            <div>
              <div>
                <h3 class="title"><a id="id1459053"></a>When Oracle Has Agreed to Support Berkeley DB on the New Platform</h3>
              </div>
            </div>
          </div>
          <p>
                        When porting Berkeley DB to a platform that Oracle has agreed to support,
                        you need to have Berkeley DB engineering review your port at various points.
                        These review points are discussed more fully in
                        <a class="xref" href="sourceintegrate.html" title="Integrating Changes into the Berkeley DB Source Code">Integrating Changes into the Berkeley DB Source Code</a>, 
                        <a class="xref" href="modifytest.html" title="Modifying the Tests">Modifying the Tests</a>, and 
                        <a class="xref" href="testreview.html" title="Reviewing the Results of the Tests">Reviewing the Results of the Tests</a>. 
                </p>
          <p>
                        It is up to you to submit the results of the tests (test_micro,
                        test_os, test_mutex, and, if possible, the entire tcl test
                        suit) for review by Oracle Berkelely DB engineering in order for Oracle to
                        consider providing support for Berkeley DB on a new platform. 
                </p>
          <p>
                        You must also assign copyrights for your changes to any part of Berkeley DB
                        to "Oracle Corporation" and attest to the fact that you are not infringing
                        on any software patents for the changes to be included in the general
                        Berekely DB distribution. 
                </p>
          <p>
                        Once the port is certified, Oracle provides support for Berkeley DB on the
                        new platform in the same manner that it does for Berkeley DB running on
                        other established platforms.
                </p>
        </div>
        <div class="sect2" lang="en" xml:lang="en">
          <div class="titlepage">
            <div>
              <div>
                <h3 class="title"><a id="id1459092"></a>When Oracle has Not Agreed to Support Berkeley DB on the New Platform</h3>
              </div>
            </div>
          </div>
          <p>
                        When Oracle has <span class="emphasis"><em>not</em></span> agreed to support
                        Berkeley DB on the new platform, the customer or partner assume the
                        responsibility of front-line support. When it is determined that there is a
                        problem in the code that was not modified by the customer or partner, then
                        Berkeley DB engineering provides support to the customer or vendor who
                        implemented the port, However, in these cases, Oracle needs access to the
                        platform and hardware for diagnosing, debugging, and testing.
        
                </p>
        </div>
      </div>
    </div>
    <div class="navfooter">
      <hr />
      <table width="100%" summary="Navigation footer">
        <tr>
          <td width="40%" align="left"><a accesskey="p" href="preface.html">Prev</a> </td>
          <td width="20%" align="center"> </td>
          <td width="40%" align="right"> <a accesskey="n" href="portprocess.html">Next</a></td>
        </tr>
        <tr>
          <td width="40%" align="left" valign="top">Preface </td>
          <td width="20%" align="center">
            <a accesskey="h" href="index.html">Home</a>
          </td>
          <td width="40%" align="right" valign="top"> Berkeley DB Porting Process</td>
        </tr>
      </table>
    </div>
  </body>
</html>
